#ifndef SINGLETON_REGISTRY_H
#define SINGLETON_REGISTRY_H

#include <utility>
#include <map>
#include <string>

namespace ibm
{

namespace singleton
{

class SingletonRegistry
{
public:

	static bool registerClass(std::string instanceName, void* instance);

private:

	SingletonRegistry();

private:

	static std::map<std::string, void*> instances;

};

bool SingletonRegistry::registerClass(std::string instanceName, void* instance)
{
	instances[instanceName] = instance;
	return true;
}

} // namespace singleton

} // namespace ibm

#endif // SINGLETON_REGISTRY_H
